#ifndef __MCD_RENDERADV_DX11_DX11INCLUDEFWD__
#define __MCD_RENDERADV_DX11_DX11INCLUDEFWD__

// Core Interfaces
struct ID3D11Asynchronous;
struct ID3D11BlendState;
struct ID3D11Counter;
struct ID3D11CommandList;
struct ID3D11DepthStencilState;
struct ID3D11Device;
struct ID3D11DeviceChild;
struct ID3D11DeviceContext;
struct ID3D11InputLayout;
struct ID3D11Predicate;
struct ID3D11Query;
struct ID3D11RasterizerState;
struct ID3D11SamplerState;

struct D3D11_INPUT_ELEMENT_DESC;

// Resource Interfaces
struct ID3D11Buffer;
struct ID3D11Resource;
struct ID3D11Texture1D;
struct ID3D11Texture2D;
struct ID3D11Texture3D;
struct ID3D11DepthStencilView;
struct ID3D11RenderTargetView;
struct ID3D11ShaderResourceView;
struct ID3D11UnorderedAccessView;
struct ID3D11View;

// Shader Interfaces
struct ID3D11ClassInstance;
struct ID3D11ClassLinkage;
struct ID3D11ComputeShader;
struct ID3D11DomainShader;
struct ID3D11GeometryShader;
struct ID3D11HullShader;
struct ID3D11PixelShader;
struct ID3D11ShaderReflection;
struct ID3D11ShaderReflectionConstantBuffer;
struct ID3D11ShaderReflectionType;
struct ID3D11ShaderReflectionVariable;
struct ID3D11VertexShader;

// D3DCompiler
struct ID3D10Blob;
typedef ID3D10Blob ID3DBlob;

#endif	// __MCD_RENDERADV_DX11_DX11INCLUDEFWD__